import { createApp } from "vue";
import "./style.css";
import App from "./App.vue";
import { pinia } from "./store/";
import router from "./router/";
import { loginDialog, bindAreaDialog } from "./components/index";
import MakeitCaptcha from "makeit-captcha";
import "makeit-captcha/dist/captcha.min.css";
// import "./assets/style/quill.css"
import svgIcon from "./components/svgIcon/index.vue";
import "virtual:svg-icons-register";
import vue3TreeOrg from 'vue3-tree-org';
import "vue3-tree-org/lib/vue3-tree-org.css";
import MarqueeText from 'vue-marquee-text-component'
import vueTextOverflow from '@fcli/vue-text-overflow';
import ElementPlus from 'element-plus';
import 'element-plus/dist/index.css';
import * as ElementPlusIconsVue from '@element-plus/icons-vue'

import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
export const app = createApp(App);
// 定义公共组件
app.component("loginDialog", loginDialog);
app.component("bindAreaDialog", loginDialog);
app.component("svg-icon", svgIcon);
app.component('marquee-text', MarqueeText)


for (const [key, component] of Object.entries(ElementPlusIconsVue)) {
  app.component(key, component)
}
app.use(pinia).use(router).use(ElementPlus,{locale:zhCn}).use(MakeitCaptcha).use(vue3TreeOrg).use(vueTextOverflow).mount("#app");
